iT邦幫忙

DAY 4
0

Azure 30天系列 第 4

Day 4. 建立Table, View, SP, Trigger

  • 分享至 

  • xImage
  •  

對於開發人員, 資料庫最重要的不外乎Table, Store procedure, View, Trigger這幾項, 接下來就針對這四項實作一次

  1. 有了資料庫, 就開始建立資料表, 不過Azure SQL的Table建立只能用script的方式

CREATE TABLE MyFirstTable
(
BookID INT,
Title VARCHAR(64),
Author VARCHAR(64)
)
GO

建立後insert三筆資料
INSERT INTO MyFirstTable VALUES (1,'Antic Hay','Aldous Huxley')
INSERT INTO MyFirstTable VALUES (2,'An Evil Cradling','Brian Keenan')
INSERT INTO MyFirstTable VALUES (3,'A Time to Kill','John Grisham')

  1. 執行會出現錯誤 'Tables without a clustered index are not supported in this version of SQL Server. Please create a clustered index and try again.', 也就是Azure SQL的Table一定要有一個clustered index.

  1. 那就補上index.

CREATE CLUSTERED INDEX IDX_ID
ON MyFirstTable
(
BookID
)
GO

  1. 重新執行Insert就沒問題了

  1. 那對於Non-Clustered有沒有什麼限制? 看來並沒有, 再把這兩個Non-Clustered移除

  1. 回到Azure Portal點選資料庫下方的'管理'

  1. 輸入使用者帳密進入Web管理介面

  1. 再資料表頁面可看到剛才建立的Table

  1. 點選'新增查詢'使用Web介面來執行看看
    SELECT * FROM MyFirstTable

  1. 執行後可再下方看到結果

  1. 也是可看到查詢計畫

  1. 回到設計頁面, 接下來在瀏覽器內實作View, Store Procedure

  1. 點選'檢視表' -> '新增檢視表', 很快建立一個 BookTitleView
    SELECT BookID, Title FROM MyFirstTable

  1. 點選'資料'可瀏覽結果

  1. 接著新建預存程序 sp_Author, 帶一個ID參數
    SELECT * FROM MyFirstTable where BookID=@ID

  1. 點選'資料'後, 先給ID輸入值1, 再執行後就可看到結果

  1. 最後回SSMS檢視剛剛在瀏覽器建立的, 再加上一個Trigger
    CREATE TRIGGER tg_LOG
    ON MyFirstTable
    AFTER INSERT
    AS
    PRINT 'Book Inserted'
    GO

INSERT INTO MyFirstTable VALUES(4, 'Hello', 'World')

看來最基本的Table, View, Store Procedure, Trigger都沒問題, 對一般程式就夠用了


上一篇
Day 3. 建立一個SQL資料庫
下一篇
Day 5. Azure資料庫概述
系列文
Azure 30天30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言